The GOD's EYE V1Here's a description for your script that aligns with the guidelines provided:
---
**Title:** The GOD's EYE V1
**Description:**
"The GOD's EYE V1" is a powerful technical analysis tool designed for Forex traders who seek to identify high-probability trading opportunities based on price action and trend-following strategies.
**Key Features:**
1. **Dynamic Channel with Upper and Lower Bands:**
- The script uses a custom EMA-based channel to identify significant price levels. The upper and lower bands are dynamically calculated by adjusting the central EMA line with a fixed pip distance, providing a clear visual of potential support and resistance zones.
2. **Engulfing Candle Detection:**
- The script identifies bullish and bearish engulfing patterns, which are key reversal signals. These patterns are used in conjunction with the EMA channel to confirm potential trade entries.
- **Bullish Engulfing:** Triggered when a bearish candle is followed by a bullish candle that engulfs the previous candle's body, combined with the EMA cross above the upper band.
- **Bearish Engulfing:** Triggered when a bullish candle is followed by a bearish candle that engulfs the previous candle's body, combined with the EMA cross below the lower band.
3. **Customizable Parameters:**
- Traders can adjust the EMA length and the distance of the upper and lower lines from the central EMA to tailor the indicator to their specific trading strategy.
4. **Visual and Alert System:**
- The script provides clear visual signals on the chart, marking potential buy and sell opportunities with triangles above or below the candles. Alerts are also integrated to notify traders in real-time when a bullish or bearish engulfing pattern is detected.
**How It Works:**
- The indicator plots two key levels on the chart (Upper and Lower) based on the central EMA. These levels act as dynamic support and resistance.
- When the fast EMA crosses above the upper band and a bullish engulfing pattern is detected, a potential buying opportunity is signaled.
- Conversely, when the fast EMA crosses below the lower band and a bearish engulfing pattern is detected, a potential selling opportunity is signaled.
**Usage:**
- This indicator is designed for traders who prefer a trend-following approach combined with price action analysis. It is especially useful for those who trade on higher timeframes like the 4H or 1H charts.
- The alerts and visual signals help traders to stay on top of potential trades without constantly monitoring the charts.
---
This description provides a clear overview of the indicator, explaining its features, how it works, and how traders can use it effectively. This should meet the publication guidelines for closed-source scripts.
Cari dalam skrip untuk "THE SCRIPT"
3-Criteria StrategyThe "3-Criteria Strategy" is a simple yet effective trading strategy based on three criteria:
200-Day Moving Average: The first criterion checks whether the current price is above or below the 200-day moving average (SMA). A price above the 200-day line is considered bullish (thumbs up), while a price below is considered bearish (thumbs down).
5-Day Indicator: The second criterion evaluates the performance of the first five trading days of the year. If the closing price on the fifth trading day is higher than the closing price on the last trading day of the previous year, this is considered bullish (thumbs up). Otherwise, it's bearish (thumbs down).
Year-to-Date (YTD) Effect: The third criterion compares the current price with the closing price at the end of the previous year. A current price above the year-end price is bullish (thumbs up), while a price below is bearish (thumbs down).
Signal Interpretation:
Buy Signal: At least two of the three criteria must give a bullish signal (thumbs up).
Sell Signal: Zero or one bullish signal results in a bearish outlook.
The script provides visual cues with background colors:
Green background: Indicates a buy signal.
Red background: Indicates a sell signal.
Additionally, the script plots the 200-day moving average and the YTD line on the chart for better visualization.
Usage:
Apply the Script: Add the script to your TradingView chart.
Interpret Signals: Monitor the background color and the status label to determine trading actions.
Visual Aids: Use the 200-day line and YTD line plotted on the chart to confirm the criteria visually.
Scientific Research
The concepts used in this script—like the 200-day moving average and Year-to-Date effects—are well-documented in financial literature. However, the combination of these specific criteria as a trading strategy is more of a heuristic approach commonly used by traders rather than a subject of extensive academic research.
200-Day Moving Average: The 200-day moving average is widely regarded as a significant level in technical analysis, often serving as a demarcation between long-term bullish and bearish trends. Research has shown that long-term moving averages can be useful for trend-following strategies.
Reference: Brock, W., Lakonishok, J., & LeBaron, B. (1992). Simple Technical Trading Rules and the Stochastic Properties of Stock Returns. Journal of Finance, 47(5), 1731-1764.
Year-to-Date and Calendar Effects: The Year-to-Date effect and early-year performance (such as the January effect) have been studied extensively in the context of seasonal market anomalies.
Reference: Rozeff, M. S., & Kinney, W. R. (1976). Capital Market Seasonality: The Case of Stock Returns. Journal of Financial Economics, 3(4), 379-402.
While these papers don't address the exact combination of criteria used in your strategy, they provide a solid foundation for understanding the underlying concepts.
Market Indicator by Atilla YurtsevenThis TradingView script is designed to analyze and visualize market trends by showing the percentage drops from the all-time high (ATH) of a stock or any other financial instrument. It also calculates and displays key statistical levels such as the mean, median, and various percentage thresholds. This indicator helps traders identify significant retracement levels and possible support/resistance zones based on historical price movements.
Indicator Settings:
- The indicator is named "Market // Atilla Yurtseven" and can be overlaid on the price chart.
- Users can choose to use the closing price (Use Close Price) or the high/low prices.
- Options are provided to show the ATH, ATL (All-Time Low), mean, median, and various minor and macro percentage levels.
Color Customization:
- The script allows customization of text and line colors for different levels, making it adaptable to different charting styles.
Initial Variable Setup:
- The script initializes several variables, including ATH, ATL, and arrays to store price data.
The round and roundy functions are used to format the values for display purposes.
ATH/ATL Calculation:
- The script checks if the current price exceeds the previous ATH and updates the ATH accordingly.
- Similarly, the script calculates the ATL based on the lowest point after reaching the ATH.
Mean and Median Calculation:
- The mean is calculated as the average drop from the ATH, while the median is the middle value in the sorted array of drops.
- These statistics provide insight into the overall trend and are used to identify significant price levels.
Plotting the Levels:
The script plots the ATH, ATL, mean, median, and various percentage retracement levels (12.5%, 25%, 37.5%, etc.).
The levels are color-coded based on user preferences, making it easier to interpret the chart visually.
Labels and Text Display:
- The script dynamically creates and updates labels on the chart to show the values of the ATH, ATL, mean, median, and other key levels.
- This feature allows traders to see at a glance how far the current price is from these critical levels.
Hit Detection:
- The script includes logic to detect if the price is within the range of the mean and median. If the price is within this range, the color of the fill between these levels changes, highlighting this area on the chart.
This script is a powerful tool for traders who want to analyze the retracement levels from historical highs. By displaying the mean, median, and various percentage levels, it provides a comprehensive view of potential support and resistance areas, helping traders make more informed decisions. The customizable nature of the script allows it to fit seamlessly into different trading strategies and charting styles.
Disclaimer:
This script is provided for informational and educational purposes only and does not constitute financial or investment advice. The author, Atilla Yurtseven, is not responsible for any financial losses or damages that may occur as a result of using this script. Trading and investing in financial markets involve risk, and past performance is not indicative of future results. Users should conduct their own research and consult with a qualified financial advisor before making any investment decisions. Use this script at your own risk.
Trade smart, stay safe.
Atilla Yurtseven
Normalized and Smoothed Cumulative Delta for Top 5 NASDAQ StocksThis script is designed to create a TradingView indicator called **"Normalized and Smoothed Cumulative Delta for Top 5 NASDAQ Stocks."** The purpose of this indicator is to track and visualize the cumulative price delta (the change in price from one period to the next) for the top five NASDAQ stocks: Apple Inc. (AAPL), Microsoft Corporation (MSFT), Alphabet Inc. (GOOGL), Amazon.com Inc. (AMZN), and Meta Platforms Inc. (FB).
### Key Features of the Script:
1. **Ticker Selection**:
- The script focuses on the top five NASDAQ stocks by automatically setting their tickers.
2. **Price Data Retrieval**:
- It fetches the closing prices for each of these stocks using the `request.security` function for the current timeframe.
3. **Delta Calculation**:
- The script calculates the delta for each stock, which is simply the difference between the current closing price and the previous closing price.
4. **Cumulative Delta Calculation**:
- It calculates the cumulative delta for each stock by adding the current delta to the previous cumulative delta. This helps track the total change in price over time.
5. **Summing and Smoothing**:
- The cumulative deltas for all five stocks are summed together.
- The script then applies an Exponential Moving Average (EMA) with a period of 5 to smooth the summed cumulative delta, making the indicator less sensitive to short-term fluctuations.
6. **Normalization**:
- To ensure the cumulative delta is easy to interpret, the script normalizes it to a range of 0 to 1. This is done by tracking the minimum and maximum values of the smoothed cumulative delta and scaling the data accordingly.
7. **Visualization**:
- The normalized cumulative delta is plotted as a smooth line, allowing users to see the overall trend of the cumulative price changes for the top five NASDAQ stocks.
- A horizontal line is added at 0.5, serving as a midline reference, which can help traders quickly assess whether the normalized cumulative delta is above or below its midpoint.
### Usage:
This indicator is particularly useful for traders and investors who want to monitor the aggregated price movements of the top NASDAQ stocks, providing a high-level view of market sentiment and trends. By smoothing and normalizing the data, it offers a clear and concise visualization that can be used to identify potential market turning points or confirm ongoing trends.
ToxicJ3ster - Day Trading SignalsThis Pine Script™ indicator, "ToxicJ3ster - Signals for Day Trading," is designed to assist traders in identifying key trading signals for day trading. It employs a combination of Moving Averages, RSI, Volume, ATR, ADX, Bollinger Bands, and VWAP to generate buy and sell signals. The script also incorporates multiple timeframe analysis to enhance signal accuracy. It is optimized for use on the 5-minute chart.
Purpose:
This script uniquely combines various technical indicators to create a comprehensive and reliable day trading strategy. Each indicator serves a specific purpose, and their integration is designed to provide multiple layers of confirmation for trading signals, reducing false signals and increasing trading accuracy.
1. Moving Averages: These are used to identify the overall trend direction. By calculating short and long period Moving Averages, the script can detect bullish and bearish crossovers, which are key signals for entering and exiting trades.
2. RSI Filtering: The Relative Strength Index (RSI) helps filter signals by ensuring trades are only taken in favorable market conditions. It detects overbought and oversold levels and trends within the RSI to confirm market momentum.
3. Volume and ATR Conditions: Volume and ATR multipliers are used to identify significant market activity. The script checks for volume spikes and volatility to confirm the strength of trends and avoid false signals.
4. ADX Filtering: The ADX is used to confirm the strength of a trend. By filtering out weak trends, the script focuses on strong and reliable signals, enhancing the accuracy of trade entries and exits.
5. Bollinger Bands: Bollinger Bands provide additional context for the trend and help identify potential reversal points. The script uses Bollinger Bands to avoid false signals and ensure trades are taken in trending markets.
6. Higher Timeframe Analysis: This feature ensures that signals align with broader market trends by using higher timeframe Moving Averages for trend confirmation. It adds a layer of robustness to the signals generated on the 5-minute chart.
7. VWAP Integration: VWAP is used for intraday trading signals. By calculating the VWAP and generating buy and sell signals based on its crossover with the price, the script provides additional confirmation for trade entries.
8. MACD Analysis: The MACD line, signal line, and histogram are calculated to generate additional buy/sell signals. The MACD is used to detect changes in the strength, direction, momentum, and duration of a trend.
9. Alert System: Custom alerts are integrated to notify traders of potential trading opportunities based on the signals generated by the script.
How It Works:
- Trend Detection: The script calculates short and long period Moving Averages and identifies bullish and bearish crossovers to determine the trend direction.
- Signal Filtering: RSI, Volume, ATR, and ADX are used to filter and confirm signals, ensuring trades are taken in strong and favorable market conditions.
- Multiple Timeframe Analysis: The script uses higher timeframe Moving Averages to confirm trends, aligning signals with broader market movements.
- Additional Confirmations: VWAP, MACD, and Bollinger Bands provide multiple layers of confirmation for buy and sell signals, enhancing the reliability of the trading strategy.
Usage:
- Customize the input parameters to suit your trading strategy and preferences.
- Monitor the generated signals and alerts to make informed trading decisions.
- This script is made to work best on the 5-minute chart.
Disclaimer:
This indicator is not perfect and can generate false signals. It is up to the trader to determine how they would like to proceed with their trades. Always conduct thorough research and consider seeking advice from a financial professional before making trading decisions. Use this script at your own risk.
MTF Regime Filter II [CHE]Regime Filter II - Comprehensive Guide
Introduction
The "Regime Filter II " indicator is a tool designed to help traders identify market trends by smoothing price data and applying a color scheme to visualize bullish and bearish conditions. This guide provides a detailed explanation of the script's functionality, benefits, and how to use it effectively in TradingView.
Key Benefits
1. Trend Identification: Smooths price data to highlight underlying trends, making it easier for traders to spot potential buying or selling opportunities.
2. Visual Clarity: Uses distinct color schemes to differentiate between bullish and bearish market conditions, enhancing visual analysis.
3. Customization: Offers various settings to adjust smoothing and averaging lengths, choose between different color schemes, and set visibility for different timeframes.
4. Neutral Candle Option: Provides an option to display neutral candles for clearer visual representation when market conditions are neither strongly bullish nor bearish.
5. Timeframe Adaptability: Includes functions to determine appropriate step sizes based on different timeframes, ensuring the indicator remains accurate across various trading periods.
Script Breakdown
1. Indicator Declaration
The script starts by declaring itself as a TradingView indicator using the latest version of Pine Script. This sets up the framework for the indicator's functionality.
2. User Inputs for Smoothing and Averaging Lengths
The script allows users to input specific lengths for smoothing and averaging intervals. These inputs are crucial for determining how the price data is processed to identify trends. By adjusting these lengths, users can fine-tune the sensitivity of the indicator to market movements.
3. Color Scheme Selection
Users can choose between two color schemes: "Traditional" and "WT1 0 Rule". The selected color scheme will determine how the indicator colors the candles to represent bullish and bearish conditions. This customization enhances the visual appeal and usability of the indicator according to personal preferences.
4. Settings for Timeframe Visibility
The script includes settings that allow users to specify which timeframes the indicator should be visible on. This feature helps traders focus on the most relevant timeframes for their trading strategies. Additionally, users can set the number of recent candles to display, providing a clear view of the most recent market trends.
5. Color Definitions
The indicator defines specific colors for bearish and bullish candles. Bearish candles are colored red, while bullish candles are green. These color definitions are applied based on the selected color scheme and the calculated trend, providing a quick visual reference for market conditions.
6. Time Constants
To manage different timeframes effectively, the script uses constants that represent various time intervals in milliseconds, such as minutes, hours, and days. These constants are used to convert timeframes into a format that the script can work with to determine the appropriate step size for calculations.
7. Step Size Determination
The script includes a function that determines the step size based on the selected timeframe. This function ensures that the indicator adapts to different timeframes, maintaining its accuracy and relevance across various trading periods. The step size is calculated based on time intervals, and appropriate labels (like "60", "240", "1D") are assigned.
- For timeframes less than or equal to 1 minute, the step size is set to "60".
- For timeframes less than or equal to 5 minutes, the step size is set to "240".
- For timeframes less than or equal to 1 hour, the step size is set to "1D" (daily).
- For timeframes less than or equal to 4 hours, the step size is set to "3D" (three days).
- For timeframes less than or equal to 12 hours, the step size is set to "7D" (weekly).
- For timeframes less than or equal to 1 day, the step size is set to "1M" (monthly).
- For timeframes less than or equal to 1 week, the step size is set to "3M" (three months).
- For all other timeframes, the step size is set to "12M" (yearly).
8. Trend Calculation
The core of the indicator is its ability to calculate market trends. Here's a detailed breakdown of how the `calculateTrend` function works:
- Initialization: Variables for the middle price and scale, and summations of high/low prices and ranges, are initialized.
- Summation Loop: A loop runs over the smoothing length to calculate the sum of high and low prices and their range.
- Middle and Scale Calculation: The middle price is determined as the average of high/low sums, and the scale is calculated as a fraction of the average range.
- Normalization: The high, low, and close prices are normalized based on the middle price and scale.
- HT Calculation: The normalized prices are smoothed using a simple moving average (SMA).
- Frequency and Exponential Calculations: The frequency and related constants (a, c1, c2, c3) are calculated for further smoothing.
- Smoothed Moving Average (SMA): A smoothed moving average is computed using the HT values and exponential constants.
- WT1 and WT2 Calculation: The final smoothed values (WT1) and their average (WT2) are derived.
9. Color Application Based on Trend
Once the trend is calculated, the script applies the appropriate color to the candles based on the selected color scheme. This function ensures that the visual representation of the trend is consistent with the user’s preferences.
10. Label Plotting for Timeframes
If the option to display timeframe labels is enabled, the script plots labels on the chart to indicate the current timeframe. This feature helps users quickly identify which timeframe they are analyzing.
11. Shape Plotting Based on Trend and Color Scheme
The indicator plots shapes (squares) on the chart based on the calculated trend and selected color scheme. These shapes provide an additional visual cue for market conditions, enhancing the overall clarity of the indicator.
12. Neutral Candle Color Option
The script includes an option to set the color of neutral candles when market conditions are neither strongly bullish nor bearish. This option helps traders better visualize periods of market indecision.
Summary
The "Regime Filter II " is a powerful and customizable tool for traders, offering clear visual cues for market trends and adaptability to various timeframes. By smoothing price data and applying intuitive color schemes, it helps traders make more informed decisions. With features like adjustable smoothing lengths, multiple color schemes, and optional neutral candle displays, this indicator enhances market analysis and trading strategy development. By following this comprehensive guide, traders can effectively utilize the "Regime Filter II " indicator to enhance their market analysis and make more informed trading decisions.
Best regards
[UST] Protein+Support/Resistance Script: A Comprehensive Overview
Thanks to Pmgjiv for providing the foundation to this improved Version.
In the world of trading, having a robust support and resistance analysis tool can make a significant difference in decision-making and overall strategy. Let's delve into the enhancements made to the support/resistance script and how each component contributes to a trader's arsenal:
Changes and improvements made for the script to help Traders make better rational decisions in their Trading:
1. Multiple Timeframes:
Integrating multiple timeframes into the analysis provides a multi-dimensional view of the market. Traders can now assess price action across different time horizons simultaneously. This feature allows for a deeper understanding of market dynamics and helps in identifying significant support and resistance levels across various timeframes.
2. Timeframe Labels Inside Zones:
By including timeframe labels within the zones, traders can easily identify the origin of each support or resistance level. This contextual information enhances clarity and facilitates more informed decision-making, especially when navigating through multiple timeframes.
3. Visual Zone Update:
Visual updates on zones enable traders to track changes in support and resistance levels in real-time. This dynamic feature enhances the analytical process by providing immediate insights into evolving market conditions, thereby enabling traders to adapt their strategies accordingly.
4. Zones Hit:
Understanding the frequency and intensity of zone hits offers valuable insights into the strength and relevance of support and resistance levels. Traders can gauge the significance of each zone based on its historical interaction with price, thereby gaining a deeper understanding of market sentiment and potential trading opportunities.
5. Option to Turn off Current Timeframe:
The ability to toggle off the current timeframe streamlines chart analysis by focusing only on the most critical support and resistance zones. This decluttering feature helps traders prioritize key levels, reducing cognitive overload and enhancing decision-making efficiency.
Explanation of Additional Functions:
a. Lookback:
The 'lookback' parameter allows traders to customize the age of support and resistance zones based on their trading style and preferences. By adjusting the lookback setting, traders can choose whether to prioritize recent price action or consider historical data, thus tailoring the analysis to their specific trading strategies.
b. Swinglength:
Swinglength determines the sensitivity of the support and resistance zones. By modifying this parameter, traders can control how aggressively the script identifies pivot points. A higher swinglength value results in smoother, more stable zones, whereas a lower value increases sensitivity, capturing smaller price movements.
c. ZigZag Indicator:
The ZigZag indicator plays a pivotal role in identifying significant price reversals. Its period setting determines the number of price bars considered before confirming a pivot point. Traders can utilize this indicator to identify key turning points in the market, aiding in the identification of robust support and resistance levels.
Impact of Sensitivity on Zones:
Adjusting the sensitivity of the ZigZag indicator directly influences the identification and delineation of support and resistance zones. Higher sensitivity levels result in fewer but more robust zones, capturing significant price movements. Conversely, lower sensitivity levels yield more zones, accommodating smaller price fluctuations but potentially introducing noise into the analysis.
d. S/R Range:
The ability to adjust the width of support and resistance zones allows traders to customize the breadth of key areas on a chart. Choosing a wider range encompasses a broader spectrum of prices, thereby identifying more comprehensive support and resistance levels. This flexibility enables traders to adapt their analysis to different market conditions and trading strategies.
Utilization in Trading:
Comprehensive Analysis: By incorporating multiple timeframes, traders gain a holistic view of market dynamics, enabling them to identify high-probability trading opportunities across various horizons.
Contextual Understanding: Timeframe labels within zones provide context, helping traders understand the significance of each level in relation to different timeframes and market conditions.
Real-time Adaptability: Visual zone updates facilitate real-time analysis, allowing traders to adjust their strategies promptly in response to changing market conditions.
Informed Decision-making: By considering zone hits, traders can assess the strength and relevance of support and resistance levels, enhancing their ability to make informed trading decisions.
Customized Analysis: Adjustable parameters such as lookback, swinglength, and sensitivity empower traders to tailor the analysis to their individual trading styles and preferences, enhancing precision and effectiveness.
In summary, these enhancements to the support/resistance script provide traders with a powerful toolkit for analyzing market dynamics, identifying key levels, and executing well-informed trading strategies across various timeframes and market conditions.
MTF TREND-PANEL-(AS)
0). INTRODUCTION: "MTF TREND-PANEL-(AS)" is a technical tool for traders who often perform multi-timeframe analysis.
This simple tool is meant for traders who wish to monitor and keep track of trend directions simultaneously on various timeframes, ranging from 1MIN to 3MONTHS (or other - 'DIFF')
script enhances decision-making efficiency and provides a clearer picture of market condition by integrating multiple timeframe analysis into a single panel.
1). WARNING!:
-script doesn't make any calculations on its own really but is more of a tool for traders to remember what is happening on other time frames
- use tooltips to navigate settings easier
2). MAIN OPTIONS:
- Keeps track of up to 7 timeframes. (NUMBER of TimeFrames setting, from 1-7)
- Customizable Display: Choose to display nothing, upward/downward arrows, or a range indication for each timeframe.
- timeframe options: '1-MIN','5-MIN','15-MIN','30-MIN','1H','4H','1D','1W','1M','3M','DIFF'
- Color Coding: Define your preferred colors for each timeframe
- set position of the table and size of text (Position/text)
- Personal Touch: Add your own trading maxim or motto for inspiration to show up when SHOW TEXT is turned on
3. )OPTIONS:
-NUMBER of TimeFrames setting: from 1-7 - how many rows to show
-SHOW TABLE: Toggle to display or hide the trend table panel.
-SHOW TEXT: Show or hide your personalized trading maxim.
-SHOW TREND: Enable to display trend direction arrows.
-SHOW_CLRS: Turn on to activate color coding for each timeframe.
-position/text size for table
-settings for each timeframe:color,time,trend
-place to type ur own text
5). How to Use the Script:
-After adding the script to your chart, use the 'NUMBER of TimeFrames' setting to select how many timeframes you want to track (1 to 7).
-Customize the appearance of each timeframe row using the color and arrow options.
-For trend analysis, the script offers arrows to indicate upward, downward, or ranging markets.
-decide what trend dominates particular TF (using other tools - script does not calculate trend on its own )
- mark trends on panel to keep track of all TF
-Enable or disable various features like the table panel, trader maxim, and color coding using the ON/OFF options.
6). just in case:
- ask me anything about the code
-don't be shy to report any bugs or offer improvements of any kind.
- originally created for @ict_whiz and made public at his request
Simple Moving Average CrossoverThis Pine Script is a TradingView script for creating a technical analysis indicator known as a Simple Moving Average Crossover (SMAC). The script visualizes two moving averages on a chart and provides buy and sell signals based on the crossover of these moving averages.
Here's a breakdown of the script:
Input Parameters:
fastLength: The length of the fast/simple moving average.
slowLength: The length of the slow/simple moving average.
Moving Averages Calculation:
fastMA: Calculates the simple moving average with a length of fastLength using the closing prices.
slowMA: Calculates the simple moving average with a length of slowLength using the closing prices.
Plotting:
Plots the fast and slow moving averages on the chart using different colors.
Buy and Sell Signals:
buySignal: Generates a boolean series indicating a buy signal when the fast moving average crosses above the slow moving average.
sellSignal: Generates a boolean series indicating a sell signal when the fast moving average crosses below the slow moving average.
Plotting Signals:
Plots green triangle-up shapes below price bars for buy signals.
Plots red triangle-down shapes above price bars for sell signals.
In summary, this script helps traders visualize potential trend reversals by identifying points where a shorter-term moving average crosses above (buy signal) or below (sell signal) a longer-term moving average. These crossover signals are often used in trend-following strategies to capture potential changes in market direction. Traders can customize the script by adjusting the input parameters to suit their trading preferences.
MACD_RSI_trend_followingINFO:
This indicator can be used to build-up a strategy for trading of assets which are currently in trending phase.
My preference is to use it on slowly moving assets like GOLD and on higher timeframes, but practice may show that we find more usefull cases.
This script uses two indicators - MACD and RSI, as the timeframe that those are extracted for is configurable (defaults with the Chart TF, but can be any other selected by the user).
The strategy has the following simple idea - buy if any if the conditions below is true:
The selected TF MACD line crosses above the signal line and the TF RSI is above the user selected trigger value
The selected TF MACD line is above the signal line and the TF RSI crosses above the user selected trigger value
Once we're in position we wait for the selected TF MACD line to cross below the signal line, and then we set a SL at the low of that bar
DETAILS and USAGE:
In the current implementation I find two possible use cases for the indicator:
as a stand-alone indicator on the chart which can also fire alerts that can help to determine if we want to manually enter/exit trades based on them
can be used to connect to the Signal input of the TTS (TempalteTradingStrategy) by jason5480 in order to backtest it, thus effectively turning it into a strategy (instructions below in TTS CONNECTIVITY section)
In the example below we see a position opened at the bar after the buy indicator from the script has been triggered, and then later after the SL indicator from the script has been triggered a SL has been set on the lower wick of the closing candle, and the position eventually got closed once the price hit that level. Note that most of the drawing on the example snapshot below are from the TTS indicator following the buy/sell/SL conditions themseves:
Trading period can be selected from the indicator itself to limit to more interesting periods.
Arrow indications are drawn on the chart to indicate the trading conditions met in the script - green arrow for a buy signal indication and orange for LTF crossunder to indicate setting of SL.
SETTINGS:
Leaving all of the settings as in vanilla use case, as both the MACD and RSI indicator's settings follow the default ones for the stand-alone indicators themselves.
The start-end date is a time filter that can be extermely usefull when backtesting different time periods.
Pesonal preference is using the script on a D/W timeframe, while the indicator is configured to use Monthly chart.
The default value of the RSI filter is left to 50, which can be changed. I.e. if the RSI is above 50 we have a regime filter based on the MACD criteria.
EXTERNAL LIBRARIES:
The script uses a couple of external libraries:
HeWhoMustNotBeNamed/enhanced_ta/14 - collection of TA indicators
jason5480/tts_convention/3 - more details about the Template Trading Strategy below
I would like to highly appreciate and credit the work of both HeWhoMustNotBeNamed and jason5480 for providing them to the community.
TTS SETTINGS (NEEDED IF USED TO BACKTEST WITH TTS):
The TempalteTradingStrategy is a strategy script developed in Pine by jason5480, which I recommend for quick turn-around of testing different ideas on a proven and tested framework
I cannot give enough credit to the developer for the efforts put in building of the infrastructure, so I advice everyone that wants to use it first to get familiar with the concept and by checking
by checking jason5480's profile www.tradingview.com
The TTS itself is extremely functional and have a lot of properties, so its functionality is beyond the scope of the current script -
Again, I strongly recommend to be thoroughly epxlored by everyone that plans on using it.
In the nutshell it is a script that can be feed with buy/sell signals from an external indicator script and based on many configuration options it can determine how to execute the trades.
The TTS has many settings that can be applied, so below I will cover only the ones that differ from the default ones, at least according to my testing - do your own research, you may find something even better :)
The current/latest version that I've been using as of writing and testing this script is TTSv48
Settings which differ from the default ones:
from - False (time filter is from the indicator script itself)
Deal Conditions Mode - External (take enter/exit conditions from an external script)
🔌Signal 🛈➡ - MACD_RSI_trend_following: 🔌Signal to TTSv48 (this is the output from the indicator script, according to the TTS convention)
Sat/Sun - true (for crypto, in order to trade 24/7)
Order Type - STOP (perform stop order)
Distance Method - HHLL (HigherHighLowerLow - in order to set the SL according to the strategy definition from above)
The next are just personal preferenes, you can feel free to experiment according to your trading style
Take Profit Targets - 0 (either 100% in or out, no incremental stepping in or out of positions)
Dist Mul|Len Long/Short- 10 (make sure that we don't close on profitable trades by any reason)
Quantity Method - EQUITY (personal backtesting preference is to consider each backtest as a separate portfolio, so determine the position size by 100% of the allocated equity size)
Equity % - 100 (note above)
IU SIP CALCULATORHow This Indicator Script Works:
1. This indicator script calculate the monthly SIP returns of any market over any user defined period.
2. SIP stands for Systematic Investment Plan. It is a way to invest in any asset by regularly investing a fixed amount of money at regular intervals for example Monthly, Weekly, Quarterly etc.
3. This indicator Calculate the following
# Average buy price
# Total quantity hold
# Yearly returns
# Monthly returns
# Total invested amount
# Total profits in amount
# Total portfolio value
# Total returns in per percentage term.
4. This script takes monthly SIP amount, starting month, starting year, ending year, ending month from the user and store the value for calculations.
5. After that it store the open price of every month into an array then it average the array and compare that price with the last month close price.
6. on the bases of this it performs all of the calculations.
7. The script plot every calculation into an table from.
8. It requires monthly chart timeframe for working.
9. The table is editable user can change the color and transparency.
How User Can Benefit From The Script:
1. User can get the past monthly SIP returns of any market he wants to invest this will give him an overview about what to expect from the market.
2. Once user understand the expected returns from the market he can adjust his investment strategy.
3. This help the user to Analyse various stocks and their past performance.
4. User can also short list the best performed stocks.
5. Over all this script will give complete SIP vision of any market.
Time Session Filter - MACD exampleTime Session Filter in TradingView Strategy: A Comprehensive Guide
Welcome to this educational TradingView blog where we dive deep into the functionality and utility of the time session filter in trading strategies. It's interesting to note that the time session filter is a commonly overlooked feature in Pine Script, often not integrated into overall trading strategies. Yet, when used wisely, this tool can significantly enhance your trading approach. In essence, the session filter ensures that trades are only made within a specific, user-defined time frame. By incorporating this often-neglected building block, you can make your strategy more adaptable to various market conditions and trading preferences.
What is a Time Session Filter?
A time session filter is designed to:
Select Times of the Day to Trade: The filter allows you to choose specific hours during the day in which trades are allowed to be excecuted.
Toggle Days to Trade: You can decide which days of the week you want to trade, giving you the flexibility to avoid days that are historically not profitable for your strategy.
Close Trade When Session Ends: The filter can automatically close any open trade once the specified time session concludes, reducing the risk associated with holding positions outside your chosen time frame.
The user interface is streamlined, taking minimal space for the input sections, making it convenient to integrate with other indicators in your overall strategy script. In addition the script colors the background of the chart green when the timesession filter is on and makes the background red when the filter doesn't allow any trades. This helps you to visualise the selected timeframes in relation to chart patterns.
Best Practices for Time Selection
From my personal trading experience I share some input settings you can try to play around with:
Stocks: Trading stocks sometimes yield better results if you only trade in the mornings until lunchtime. This is the period when markets are generally more active, and traders are keenly participating.
Cryptocurrencies: For cryptocurrencies, it sometimes makes sense to avoid trading on Fridays, a day when futures contracts often expire. Various other market-moving events also typically occur on Fridays.
Random Selection: Interestingly, sometimes choosing a random selection of times and days can improve the script's performance, adding an element of unpredictability that might outperform more systematic approaches.
Strategy Overview
This strategy script incorporates various elements, including risk position size and MACD indicator, to provide a comprehensive trading strategy. For a detailed explanation of risk position sizing, please refer to this article:
For a complete understanding of the MACD indicator utilized, visit the following explanation:
Additionally, for high time frame trend filters, consult this resource for more info:
Educational Purposes and Risks
Please note that this script is for educational purposes and serves merely as an example of how to incorporate a time session filter into a trading strategy for pinescript. It is a simplified strategy without a fixed stop-loss, which can result in higher exposure to significant losses. The time session filter can be a powerful addition to your trading strategy, providing you with the tools to tailor your approach according to time-specific market conditions. By understanding its functionalities and best practices, you can make more informed trading decisions, but always remember that trading carries inherent risks.
Happy trading!
Support and Resistance Signals MTF [LuxAlgo]The Support and Resistance Signals MTF indicator aims to identify undoubtedly one of the key concepts of technical analysis Support and Resistance Levels and more importantly, the script aims to capture and highlight major price action movements, such as Breakouts , Tests of the Zones , Retests of the Zones , and Rejections .
The script supports Multi-TimeFrame (MTF) functionality allowing users to analyze and observe the Support and Resistance Levels/Zones and their associated Signals from a higher timeframe perspective.
This script is an extended version of our previously published Support-and-Resistance-Levels-with-Breaks script from 2020.
Identification of key support and resistance levels/zones is an essential ingredient to successful technical analysis.
🔶 USAGE
Support and resistance are key concepts that help traders understand, analyze and act on chart patterns in the financial markets. Support describes a price level where a downtrend pauses due to demand for an asset increasing, while resistance refers to a level where an uptrend reverses as a sell-off happens.
The creation of support and resistance levels comes as a result of an initial imbalance of supply/demand, which forms what we know as a swing high or swing low. This script starts its processing using the swing highs/lows. Swing Highs/Lows are levels that many of the market participants use as a historical reference to place their trading orders (buy, sell, stop loss), as a result, those price levels potentially become and serve as key support and resistance levels.
One of the important features of the script is the signals it provides. The script follows the major price movements and highlights them on the chart.
🔹 Breakouts (non-repaint)
A breakout is a price moving outside a defined support or resistance level, the significance of the breakout can be measured by examining the volume. This script is not filtering them based on volume but provides volume information for the bar where the breakout takes place.
🔹 Retests
Retest is a case where the price action breaches a zone and then revisits the level breached.
🔹 Tests
Test is a case where the price action touches the support or resistance zones.
🔹 Rejections
Rejections are pin bar patterns with high trading volume.
Finally, Multi TimeFrame (MTF) functionality allows users to analyze and observe the Support and Resistance Levels/Zones and their associated Signals from a higher timeframe perspective.
🔶 SETTINGS
The script takes into account user-defined parameters to detect and highlight the zones, levels, and signals.
🔹 Support & Resistance Settings
Detection Timeframe: Set the indicator resolution, the users may examine higher timeframe detection on their chart timeframe.
Detection Length: Swing levels detection length
Check Previous Historical S&R Level: enables the script to check the previous historical levels.
🔹 Signals
Breakouts: Toggles the visibility of the Breakouts, enables customization of the color and the size of the visuals
Tests: Toggles the visibility of the Tests, enables customization of the color and the size of the visuals
Retests: Toggles the visibility of the Retests, enables customization of the color and the size of the visuals
Rejections: Toggles the visibility of the Rejections, enables customization of the color and the size of the visuals
🔹 Others
Sentiment Profile: Toggles the visibility of the Sentiment Profiles
Bullish Nodes: Color option for Bullish Nodes
Bearish Nodes: Color option for Bearish Nodes
🔶 RELATED SCRIPTS
Support-and-Resistance-Levels-with-Breaks
Buyside-Sellside-Liquidity
Liquidity-Levels-Voids
Relative Trend Index (RTI) by Zeiierman█ Overview
The Relative Trend Index (RTI) developed by Zeiierman is an innovative technical analysis tool designed to measure the strength and direction of the market trend. Unlike some traditional indicators, the RTI boasts a distinctive ability to adapt and respond to market volatility, while still minimizing the effects of minor, short-term market fluctuations.
The Relative Trend Index blends trend-following and mean-reverting characteristics, paired with a customizable and intuitive approach to trend strength, and its sensitivity to price action makes this indicator stand out.
█ Benefits of using this RTI instead of RSI
The Relative Strength Index (RSI) and the Relative Trend Index (RTI) are both powerful technical indicators, each with its own unique strengths.
However, there are key differences that make the RTI arguably more sophisticated and precise, especially when it comes to identifying trends and overbought/oversold (OB/OS) areas.
The RSI is a momentum oscillator that measures the speed and change of price movements and is typically used to identify overbought and oversold conditions in a market. However, its primary limitation lies in its tendency to produce false signals during extended trending periods.
On the other hand, the RTI is designed specifically to identify and adapt to market trends. Instead of solely focusing on price changes, the RTI measures the relative positioning of the current closing price within its recent range, providing a more comprehensive view of market conditions.
The RTI's adaptable nature is particularly valuable. The user-adjustable sensitivity percentage allows traders to fine-tune the indicator's responsiveness, making it more resilient to sudden market fluctuations and noise that could otherwise produce false signals. This feature is advantageous in various market conditions, from trending to choppy and sideways-moving markets.
Furthermore, the RTI's unique method of defining OB/OS zones takes into account the prevailing trend, which can provide a more precise reflection of the market's condition.
While the RSI is an invaluable tool in many traders' toolkits, the RTI's unique approach to trend identification, adaptability, and enhanced definition of OB/OS zones can provide traders with a more nuanced understanding of market conditions and potential trading opportunities. This makes the RTI an especially powerful tool for those seeking to ride long-term trends and avoid false signals.
█ Calculations
In summary, while simple enough, the math behind the RTI indicator is quite powerful. It combines the quantification of price volatility with the flexibility to adjust the trend sensitivity. It provides a normalized output that can be interpreted consistently across various trading scenarios.
The math behind the Relative Trend Index (RTI) indicator is rooted in some fundamental statistical concepts: Standard Deviation and Percentiles.
Standard Deviation: The Standard Deviation is a measure of dispersion or variability in a dataset. It quantifies the degree to which each data point deviates from the mean (or average) of the data set. In this script, the standard deviation is computed on the 'close' prices over a specified number of periods. This provides a measure of the volatility in the price over that period. The higher the standard deviation, the more volatile the price has been.
Percentiles: The percentile is a measure used in statistics indicating the value below which a given percentage of observations in a group falls. After calculating the upper and lower trends for the last 'length' periods and sorting these values, the script uses the 'Sensitivity ' parameter to extract percentiles from these sorted arrays. This is a powerful concept because it allows us to adjust the sensitivity of our signals. By choosing different percentiles (controlled through the 'Sensitivity' parameter), we can decide whether we want to react only to extreme events (high percentiles) or be more reactive and consider smaller deviations from the norm as significant (lower percentiles).
Finally, the script calculates the Relative Trend Index value, which is essentially a normalized measure indicating where the current price falls between the upper and lower trend values. This simple ratio is incredibly powerful as it provides a standardized measure that can be used across different securities and market conditions to identify potential trading signals.
Core Components
Trend Data Count: This parameter denotes the number of data points used in the RTI's calculation, determining the trend length. A higher count captures a more extended market view (long-term trend), providing smoother results that are more resistant to sudden market changes. In contrast, a lower count focuses on more recent data (short-term trend), yielding faster responses to market changes, albeit at the cost of increased susceptibility to market noise.
Trend Sensitivity Percentage: This parameter is employed to select the indices within the trend arrays used for upper and lower trend definitions. By adjusting this value, users can affect the sensitivity of the trend, with higher percentages leading to a less sensitive trend.
█ How to use
The RTI plots a line that revolves around a mid-point of 50. When the RTI is above 50, it implies that the market trend is bullish (upward), and when it's below 50, it indicates a bearish (downward) trend. Furthermore, the farther the RTI deviates from the 50 line, the stronger the trend is perceived to be.
Bullish
Bearish
The RTI includes user-defined Overbought and Oversold levels. These thresholds suggest potential trading opportunities when they are crossed, serving as a cue for traders to possibly buy or sell. This gives the RTI an additional use case as a mean-reversion tool, in addition to being a trend-following indicator.
In short
Trend Confirmation and Reversals: If the percentage trend value is consistently closer to the upper level, it can indicate a strong uptrend. Similarly, if it's closer to the lower level, a downtrend may be in play. If the percentage trend line begins to move away from one trend line towards the other, it could suggest a potential trend reversal.
Identifying Overbought and Oversold Conditions: When the percentage trend value reaches the upper trend line (signified by a value of 1), it suggests an overbought condition - i.e., the price has been pushed up, perhaps too far, and could be due for a pullback, or indicating a strong positive trend. Conversely, when the percentage trend value hits the lower trend line (a value of 0), it indicates an oversold condition - the price may have been driven down and could be set to rebound, or indicate a strong negative trend. Traders often use these overbought and oversold signals as contrarian indicators, considering them potential signs to sell (in overbought conditions) or buy (in oversold conditions). If the RTI line remains overbought or oversold for an extended period, it indicates a strong trend in that direction.
█ Settings
One key feature of the RTI is its configurability. It allows users to set the trend data length and trend sensitivity.
The trend data length represents the number of data points used in the trend calculation. A longer trend data length will reflect a more long-term trend, whereas a shorter trend data length will capture short-term movements.
Trend sensitivity refers to the threshold for determining what constitutes a significant trend. High sensitivity levels will deem fewer price movements as significant, hence making the trend less sensitive. Conversely, low sensitivity levels will deem more price movements as significant, hence making the trend more sensitive.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Psychological levels (Bank levels) PsychoLevels v3 - TartigradiaPsychological levels (Bank levels) plots the closest "round" price levels above and below current price, based on neuroscience research of how humans intuitively calculate in logarithms.
Psychological levels, also called bank levels, are "round" price numbers, by truncating after the nth leftmost digits, around which price often experience resistance or support, because traders and investors tend to set orders around these round numbers.
The calculation done here is fully automatic and dynamic, contrary to other similar scripts, this one uses a mathematical calculation that extracts the 1, 2 or 3 leftmost digits and calculate the previous and next level by incrementing/decrementing these digits. This means it works for any symbol under any price range.
This approach is based on neuroscience research, which found that human brains intuitively approximate numbers on a logarithmic scale, adults and children alike, and similarly to macaques, for more info see Numerical Cognition , Weber-Fechner Law , Zipf law .
For example, if price is at 0.0421, the next major price level is 0.05 and medium one is 0.043. For another asset currently priced at 19354, the next and previous major price levels are 20000 and 10000 respectively, and the next/previous medium levels are 20000 and 19000, and the next/previous weak levels are 19400 and 19300.
IMPORTANT: Please enable "Scale price chart only" in the chart's scale's options, as otherwise major levels may make the chart's scale very small and hard to read.
How it works
At any time, there are 3 levels of strength (1 leftmost digit, 2 leftmost digits, 3 leftmost digits) represented by different sizes, and 3 directional levels for each of these strengths (level above, level below, and half-level) represented by different colors and positions, around current price.
Indeed, contrary to other similar price levels scripts, we do not plot ALL price levels at all times, because otherwise the chart becomes wayyy too cluttered, and also it's highly processing intensive to plot so many lines. So we here use a dynamical approach: we plot only the relevant levels, the closest ones according to current price.
Hence, when a level disappears, it does not mean that it does not exist anymore, but simply that we are not drawing it right now because it is not pertinent for the current price movement (ie, too far away).
Breakouts can be detected in two different ways depending on if SMA is set to a value higher than 1 or not: if SMA == 1, then there is no smoothing, so the levels adapt instantaneously to the current price, so to detect breakout, you should refer to the levels at the previous tick and whether they were broken by current tick's price; if SMA > 1, then there is some smoothing, and so the levels will stay in-place even if there is a breakout, so it's easier to spot breakouts without having to look at the previous ticks, but on the other hand you won't see the new levels for the new price range until after a few more ticks for the smoothing window to adapt. Hence, by default, smoothing is disabled, so that you can see the currently pertinent levels at all time, even right after or during a breakout.
By default, the strong above level is in green, strong below level is in red, medium above level is in blue, medium below level is in yellow, and weak levels aren't displayed but can be. Half levels are also displayed, in a darker color. Strong levels are increments of the first leftmost digit (eg, 10000 to 20000), medium levels are increments of the second leftmost digit (eg, 19000 to 20000), and weak levels of the third leftmost digit (eg, 19100 to 19200). Instead of plotting all the psychological levels all at once as a grid, which makes the chart unintelligible, here the levels adapt dynamically around the current price, so that they show the above/below/half levels relatively to the current price.
Indeed, "half-levels" are also displayed (eg, medium level can also display 19500 instead of only 19000 or 20000). This was made because otherwise the gap between two levels was too big, especially for the strongest levels (eg, there was no major level between 20000 and 30000, but with a half-step we also get a half-level at 25000, and empirically price tends to respect these half levels - I also tried quarter levels but empirically the results were not good). In addition to this hard-coded half-level, you can also create more subdivisions (eg, quarter levels) by setting the simple moving average to a value higher than 1.
The script can be made to run on the daily timeframe whatever the current chart's timeframe is, to reduce the variability in levels, to make it less noisy than intraday price movement. But by default, the chart resolution is used, because I empirically found that the levels found with this indicator work on all time resolutions quite well.
The step can be adjusted to increase the gap between levels, eg, if you want to display one every 2 levels then input step = 2 (eg, 22000, 24000, 26000, etc), or if you want to display quarter levels, input 0.25 (eg, 22000, 22250, 22500, etc). The default values should fit most use cases and cover most psychological levels.
How to read
Focust first on bigger dotted levels, they are stronger and more likely to cause a rebound or a major event or price to stay at this level.
Remember that it's not enough to just look at levels, the context is important, because levels have various effects depending on current price movement: if price is above a level, the level is a support on which price can rebound; if price is below a level, the level is a resistance on which price can rebound (or break); and finally sometimes price also stays hovering around a level for some time.
Levels closer to 9 are less weaker, and levels closer to 0 are stronger, according to Zipf law. This is now reflected since v3 in the transparency, levels that are closer to 9 will be more transparent.
The switch in color for the same level illustrates how a level switches from being a support to a resistance and inversely. Eg, if a major level turns from green to red, then it changed from being a resistance (above) to a support (below).
As is well known in trading, longer standing levels are stronger. This indicator provides a direct illustration: in practice, the number of consecutive dots on the same line influences the strength of the level: the longer the chain of dots, the more you can expect this price level to be significant. The length does not mean the level will necessarily hold, but that other traders are likely to monitor if it holds, and if not then price will break down. Hence, longer levels are good spots to place stop losses, or to enter trades depending on your strategy. In general, a single dot is not enough to consider a level significant, but 2 or more is a good enough level, and 10+ is a strong level. Intuitively, this makes sense, and is what pro traders do: the longer a level is tested, the stronger it is. This indicator can visually represent this intuition and allows to use it as a more systematic trading signal.
Motivation
I initially made the first version of the PsychoLevels indicator mainly to train with PineScript, but I found it surprisingly accurate to define levels that are respected by price movements. So I guess it can be useful for new traders and experienced traders alike, as it's easy to forget that psychological levels can often be as strong if not stronger than technical levels. It can also be used to quickly screen other minor assets for trading opportunities. For example, a hybrid strategy would be to manually define levels on BTCUSD but using this script to automatically define levels in crypto altcoins and quickly screen them for a trade opportunity that can be greater than with BTCUSD but with the same trend.
Personally, although initially I did not believe an automated tool would work well for this purpose, I could now empirically verify that it is quite reliable for the purpose of detecting levels, and so I use it all the time to find the levels automatically and help me monitor them like a hawk, so that I only have to draw uber major levels, the ones that last between cycles and that are hard to autodetect, but otherwise all daily/weekly levels are usually covered. However, trendlines must still be drawn manually or with another indicator (but note that up to now I have found none that worked well enough), as PsychoLevels only draws levels (ie, horizontal lines, not oblique ones!).
Differences with the previous version PsychoLevels v2
price levels now have a transparency according to their importance for the human brain: numbers closer to 9 are weaker, and numbers closer to 0 are stronger and represent a major psychological threshold (eg, that's why prices marked as $9.99 sell better than $10.00). This option can be disabled to get the exact same behavior as v2.
modularized and typed code
PsychoLevels v2 can be found here:
Trend Angle Candle ColorIntroduction:
As a trader, understanding the trend of the market is crucial for making informed decisions. One way to gain insight into the market trend is by using technical indicators, which are mathematical calculations that provide traders with valuable information about price action. In this post, we will explore a unique indicator called the "Trend Angle Candle Color" that not only identifies the trend but also visualizes it using color-coded candlesticks. We'll dive into the script, discuss its key components, and explain how you can benefit from using it in your trading strategy.
Script Overview:
The Trend Angle Candle Color Indicator is written in the Pine Script language for the TradingView platform. The indicator utilizes a combination of Exponential Moving Average (EMA), Average True Range (ATR), and Epanechnikov Kernel function to calculate the trend angle, which is then represented by color-coded candlesticks. The script offers several customizable inputs, such as the length of the lookback period, the scale (sensitivity), and the smoothing factor.
Key Components of the Script:
Inputs:
Length: Determines the lookback period for calculating the trend.
Scale: Adjusts the sensitivity of the indicator.
Smoothing: Controls the degree of smoothing applied to the angle calculation.
Smoothing Factor: Adjusts the weight of the Epanechnikov Kernel function.
Functions:
grad(src): A function that takes an input value and returns a corresponding color from a predefined gradient.
ema(source): An Exponential Moving Average function that smoothens the price data.
atan2(y, x) and degrees(float source): Functions that convert the slope into an angle in radians and then into degrees.
epanechnikov_kernel(_src, _size, _h, _r): A function that applies the Epanechnikov Kernel smoothing method to the angle data.
Calculations:
ATR: Calculates the Average True Range using the EMA function.
Slope: Determines the slope of the price change over the specified lookback period.
Angle_rad: Converts the slope into an angle in radians.
Degrees: Applies the Epanechnikov Kernel smoothing function to the angle data and scales it to a range between 0 to 100.
Visualization:
Colour: Assigns a color to each candlestick based on the calculated degree value using the grad() function.
Barcolor(colour) and plotcandle(): Functions that display the color-coded candlesticks on the chart.
Benefits of Using the Trend Angle Candle Color Indicator:
Easy Visualization: The color-coded candlesticks provide a simple and intuitive way to understand the market trend direction and strength at a glance.
Customizable Parameters: The customizable inputs allow traders to fine-tune the indicator to their preferred settings, suiting their trading style and strategy.
Versatility: The Trend Angle Candle Color Indicator can be used across various timeframes and financial instruments, making it a valuable addition to any trader's toolkit.
Conclusion:
The Trend Angle Candle Color Indicator is a powerful tool that can enhance your trading strategy by providing a visual representation of the market trend. The unique combination of EMA, ATR, and Epanechnikov Kernel smoothing helps create a more accurate and easy-to-understand trend angle calculation. By incorporating this indicator into your trading analysis, you can gain better insight into market dynamics and make more informed trading decisions.
Visible Fibonacci█ OVERVIEW
This indicator displays Fibonacci retracement and extension levels on the price chart using data within the chart's visible range, providing traders with an automated alternative to our well-known drawing tool .
█ CONCEPTS
Fibonacci sequence and the Golden ratio
The Fibonacci sequence is a sequence of numbers where each term is the sum of the previous two terms. In his book Liber Abaci , Fibonacci used this sequence to estimate the growth of rabbit populations. Although most commonly associated with Fibonacci, this numeric sequence appeared in Indian mathematics as early as 200 BC. As this sequence approaches infinity, the ratio of the last element to the preceding approaches the Golden ratio (1.618033...), a well-known metallic ratio theoretically observed in many natural and synthetic systems. Many traders believe that the Fibonacci sequence and the Golden ratio carry significance in the financial markets.
Fibonacci retracements and extensions
Fibonacci retracements and extensions are extremely popular in technical analysis. They are created by connecting two extreme points, typically pivot points, by a trend line and multiplying the range between them by the ratios of steps in the Fibonacci sequence, or more precisely, powers of the Golden Ratio, to produce estimated levels of support and resistance. The ratios used for retracement multipliers are typically the Golden ratio raised to the power of 0, -0.5, -1, -2, and -3, or 1, 0.786, 0.618, 0.382, and 0.236, respectively. It is also common to see traders use a retracement ratio of 0.5. The ratios used for extension multipliers are typically the Golden ratio raised to the power of 0.5, 1, 2, and 3, or 1.272, 1.618, 2.618, and 4.236, respectively. Traders often combine these retracement and extension ratios with others they deem significant for a more personalized output.
Zig Zag
Zig Zag is a popular indicator that filters out minor price fluctuations to denoise data and emphasize trends. Traders commonly use Zig Zag for trend confirmation, identifying potential support and resistance, and pattern detection. It is formed by identifying significant local high and low points in alternating order and connecting them with straight lines, omitting all other data points from their output. There are several ways to calculate the Zig Zag's data points and the conditions by which its direction changes. This script uses the highest and lowest values over a specified length to estimate the locations of pivots. The Zig Zag reverses its direction when a new high or low emerges in the opposite direction. Additionally, enabling the "Detect additional pivots" option in the script settings will locate extra pivots when the number of bars in which no new pivot occurs exceeds the Zig Zag length.
Visible Fibonacci
This script uses the chart's visible bars to calculate and display an automated Fibonacci retracement tool with extreme points based on either of two calculation methods:
• Visible Chart Range: This method uses the highest and lowest points from the visible chart range for Fibonacci level calculation.
• Visible Zig Zag: This method uses historical pivots from a Zig Zag indicator for level calculation. The "nth Last Pivot" input in the script settings controls how many pivots back from the last visible one will be used to calculate the Fibonacci levels.
As traders pan and zoom on their charts, the script dynamically recalculates its values explicitly using the bars within the visible range.
Note that levels drawn outside the range between the high and low points may affect the scale of the chart. To prevent this, select the "Scale price chart only" option in the chart settings.
█ FOR Pine Script™ CODERS
• This script utilizes functions from the VisibleChart library by our resident PineCoders . The library exploits the chart.left_visible_bar_time and chart.right_visible_bar_time variables, which return the opening time of the leftmost and rightmost bars on the chart. They are only two of many new built-ins in the `chart.*` namespace. See this blog post for more information, or look them up by typing "chart." in the Pine Script™ Reference Manual .
• This script's architecture utilizes user-defined types (UDTs) to create custom objects which are the equivalent of variables containing multiple parts, each able to hold independent values of different types . The recently added feature was announced in this blog post.
Look first. Then leap.
Percent Volatility MomentumThis pine script calculates percent volatility momentum, negative percent volatility and positive percent volatility. The blue line is the overall momentum of the current percent volatility trend. The red line only includes negative movements in the percent volatility of the source. The green line includes only positive movements of the percent volatility of the source. The script also includes an angle and a normalized angle setting that allows one to determine the angle of the source curve. Note, the angle was transformed from -90 to 90 to 0 to 100. Such that an angle of -90 is transformed to 0. An angle of 0 is transformed to 50 and an angle of 90 is transformed to 100. This is the first draft of this script and my first pine script published. Any feedback is welcome. I borrowed code from TradingView's Linear Regression Channel and Relative Strength Index pine scripts.
Rob Booker Reversal Tabs StrategyRob Booker Reversal Tabs Strategy is an updated version of Rob Bookers Reversal Tab study: Rob Booker Reversal Tabs
While the original is a Pinescript study, this version can be switched between strategy and indicator mode.
Rob Bookers script generates reversal signal based on MACD and Stochastics, it is not a true reversal system, default pyramiding value is set to 5.
Inputs determine MACD and Stochastics settings. The only additional input is the "Strategy Mode" checkbox.
This script works well on its own for some tickers, but like any reversal pattern generating scripts, traders will profit from looking at overall price action and trend strength before making a trade.
From the original:
A simple reversal pattern indicator that uses MACD and Stochastics.
Created by Rob Booker and programmed by Andrew Palladino.
Please note that I only updated the original to V5 and edited it to be a strategy, which was a grand total of 5 minutes of work. I updated it because I wanted to see how the script performs as a strategy and I'm publishing it in case others would like to use it. I take no credit whatsoever for the original and WILL take this version down if Rob Booker or his Team ask me to or decide to release their own strategy version of the original.
Check out Rob Bookers scripts and ideas on his Tradingview account: robbooker
Position Tool█ OVERVIEW
This script is an interactive measurement tool that can be used to evaluate or keep track of trades. Like the long and short position drawing tools, it calculates a risk reward ratio and a risk-adjusted position size from the entry, stop and take profit levels, but it also does much more:
• It can be used to configure long or short trades.
• All monetary values can be expressed in any number of currencies.
• The value of tick/pip movement (which varies with the position's size) is displayed in the currency you have selected.
• The CAGR ( Compound Annual Growth Rate ) for the trade can be displayed.
• It does live tracking of the position.
• You can configure alerts on entries and exits.
█ HOW TO USE IT
Load the indicator on an active chart (see here if you don't know how).
When you first load this script on a chart, you will enter an interactive selection mode where the script asks you to pick three points in price and time on your chart by clicking on the chart. Directions will appear in a blue box at the bottom of the screen with each click of the mouse. The first selection is the entry point for the trade you are considering, which takes into account both the time and level you choose, the next are the take profit and stop levels. Once you have selected all three points, the script will draw trade zones and labels containing the trade metrics. The script determines if the trade is a long or short from the position of the take profit and stop loss levels in relation to the entry price. If the take profit level is above the entry price, the stop must be below and vice versa, otherwise an error occurs.
You can change levels by dragging the handles that appear when you select the indicator, or by entering new values in the script's settings. The only way to re-enter interactive mode is to re-add the indicator to your chart.
Once you place the position tool on a chart, it will appear at the same levels on all symbols you use. If your scale is not set to "Scale price chart only", the position tool's levels will be taken into account when scaling the chart, which can cause the symbol's bars to be compressed. If your scale is set to "Scale price chart only", the position tool will still be there, but it will not impact the scale of the chart's bars, so you won't see it if it sits outside the symbol's price scale.
If you select the position tool on your chart and delete it, this will also delete the indicator from the chart. You will need to re-add it if you want to draw another position tool. You can add multiple instances of the indicator if you need a position tool on more than one of your charts.
█ FEATURES
Display
The position tool displays the following information for entries:
• The entry's price level with an '@' sign before it.
• Open or Closed P&L : For an open trade, the "Open P&L" displays the difference in money value between the entry level and the chart's current price.
For a closed trade, the "Closed P&L" displays the realized P&L on the trade.
• Quantity : The trade size, which takes into account the risk tolerance you set in the script's settings.
• RR : The reward to risk ratio expresses the relationship of the distance between the entry and the take profit level vs the entry and the stop level.
Example: A $100 stop with a $100 target will have a ratio of 1:1, whereas a $200 target with the same stop will have a 2:1 ratio.
• Per tick/pip : Represents the money value of a tick or pip movement.
• CAGR : The Compound Annual Growth Rate will be displayed on the main order label on trades that exceed one day in duration.
This value is calculated the same way as in our CAGR Custom Range indicator.
If the trade duration is less than one day, the metric will not be present in the display.
The stop and take profit levels display:
• Their price level with an '@' sign before it.
• Their distance from the entry in money value, percentage and ticks/pips.
• The projected end money value of the position if the level is reached. These values are calculated based on the trade size and the currency.
Currency adjustments
This indicator modifies the trade label's colors and values based on the final Profit and Loss (P&L), which considers the dynamic exchange rate between base and conversion currencies in its calculations when the conversion currency is a specified value other than the default. Depending on the cross rate between the base and account currencies, this process can yield a negative P&L on an otherwise successful simulated trade.
For instance, if your account is in currency XYZ, you might buy 10 Apple shares at $150 each, with the XYZ to USD exchange rate being 2:1. This purchase would cost you 3000 units of XYZ. Suppose that later on, the shares appreciate to $170 each, and you decide to sell. One might expect this trade to result in profit. However, if the exchange rate has now equalized to 1:1, the return on selling the shares, calculated in XYZ, would only be 1700 units, resulting in a loss of 1300 units XYZ.
The indicator will mark the P&L and the target labels in red in such cases, regardless of whether the market price reached the profit target, as the trade produced a net loss due to reduced funds after currency conversion. Conversely, an otherwise unsuccessful position can result in a net profit in the account currency due to conversion rate fluctuations. The final losses or gains appear in the label metrics, and the corresponding color coding reflects the trade's success or failure.
Settings
The settings in the "Trade sizing" section are used to calculate the position size and the monetary value of trades. Two types of risk can be chosen from the menu; a percentage based risk calculation, or a fixed money value. The risk is used to calculate the quantity of units to purchase to achieve that level of risk exposure. Example: An account size of $1000 and 10% risk will have a projected end amount of $900 if the stop loss is hit. The quantity is a product of this relationship; a projected number of units to allow for the equivalent of $100 of risk exposure over the change in price from the entry to the stop value.
The "Trade levels" allow you to manually set the entry, take profit and stop levels of an existing position tool on your chart.
You can control the appearance of the tool and the values it displays in the settings following these first two sections.
Alerts
Three alerts that will trigger when you configure an alert on this indicator. The first will send an alert when the entry price is breached by price action if that price has not already been breached in the previous price history. This is dependant on the entry location you select when placing the indicator on the chart. The other two alerts will trigger when either the stop loss or the take profit level is breached to signal that a trade exit has occurred.
█ NOTES FOR Pine Script™ CODERS
• Interactive inputs are implemented for input.time() and input.price() . These specialized input functions allow users to interact with a script.
You can create one interactive input for both time and price values by using the same `inline` argument in a pair of input.time() and input.price() function calls.
• We use the `cagr()` function from our ta library.
• The script uses the runtime.error() function to throw an error if the stop and limit prices are not placed on opposing sides of the entry price.
• We use the `currency` parameter in a request.security() call to convert currencies.
Look first. Then leap.
VWAP Push StrategyThis strategy is unfortunately not finished yet.
A pretty simple strategy. If price broke through VWAP and had three consecutive candles following the breakthroughs trend, the high of the third candle will be drawn. If this happened after a crossover of the vwap and price breaks through the high of the third candle, strategy will go long. Short will be the same after crossing under the vwap. A long or short will be closed after crossing the vwap in the opposite direction, so the vwap is kind of a trailing stop.
Unfortunately, I could not manage to stop the script from entering multiple times into one drawn high or low. Of course, if a high was crossed the script should wait for a new formed high before entering a new long. If someone would find a solution to this, it would be great, because I think it is a nice strategy .
Should work great scalping 5min charts (when scripting, I used the SPX for reference).
(Quartile Vol.; Vol. Aggregation; Range US Bars; Gaps) [Kioseff]Hello!
This indicator is a multifaceted tool that's, hopefully, useful for price action and volume analysis.
(This script makes use of the newly introduced "text_font" parameter)
With this script you'll have access to:
Range US Chart
Volume Aggregation Chart
Gaps Chart
Volume by Quartile
Consequently, you'll have access to:
First Quartile Volume Threshold
Second Quartile Volume Threshold
Third Quartile Volume Threshold
90th Percentile Volume Threshold
Fourth Quartile Volume Threshold
Q2 - Q1 Dispersion
Q3 - Q2 Dispersion
Q4 - Q3 Dispersion
Quartile Deviation
Interquartile Range
Avg. "n" bar return following "high" volume
Avg. "n" bar positive return following "high" volume
Avg. "n" bar negative following "high" volume
# of Positive Returns Following a Gap
# of Negative Returns Following a Gap
# of Gaps
# of Up Gaps
# of Down Gaps
Average # of bars to fill Up Gaps
Average # of bars to dill Down Gaps
Average Gap Up % increase
Average Gap Down % decrease
Cumulative % increase of all Up Gaps
Cumulative % decrease of all Down Gaps
Sort gaps by distance from price
Hide gaps that price substantially deviates from (gaps will reappear when price trades near the gap)
Segment Range US bars by date
Manually configure Range US price thresholds
Identify "congestion" areas with Range US bars
Range US Levels that must be exceeded for a new Range US bar to produce
Manually configure cumulative volume threshold for Volume Aggregation bars
Segment Volume Aggregation bars by date
Largest Volume Aggregation bar increases
Largest Volume Aggregation bar decreases
Calculate log returns after "high" volume sessions
Quartile Volume
The Quartile Volume portion of the script segments price/volume intervals by quartile.
The image above shows features of the indicator.
For statistics, the following metrics are recorded:
First Quartile
Second Quartile
Third Quartile
90th Percentile
Fourth Quartile
Q2 - Q1 Dispersion
Q3 - Q2 Dispersion
Q4 - Q3 Dispersion
Quartile Deviation
Interquartile Range
Color-coordinated price bars (by volume quartiles)
The percent rank for the volume of the current bar
Avg. "n" bar return following "high" volume
Avg. "n" bar positive return following "high" volume
Avg. "n" bar negative following "high" volume
The script colors bars via gradient.
By default, bars are colored lime when volume for the interval is "high" (exceeds upper quartile thresholds). The greener the bar, the higher the volume for the interval.
Bars are colored red when volume for the interval is "low" (fails to exceed lower quartile thresholds). The redder the bar, the lower the volume for the interval.
Naturally, brownish-colored bars reflect a volume interval that concluded near the median.
The image above exemplifies the process. This feature might be useful to categorize / objectively define high-volume clusters, low-volume clusters, high-volume price moves, low-volume price moves, etc.
For greater precision, you can select to color bars by volume quartile they belong to.
The image above shows color-coordinated price bars. More details shown in the image.
Additionally, you can select to plot the quartile/percentile that a price bar belongs to on the chart.
The image above shows price bars numbered by the volume quartile they belong to.
The script will distinguish successive 90th percentile violations, superimpose a linear regression channel atop the data sequence, and record pertinent statistics.
The image above shows the process.
Lastly, the user can plot an anchored VWAP using a built-in time function.
The image above shows the anchored VWAP.
Range US Chart
A Range US chart operates irrespective of time and volume - simply - bars produce after a user-defined price move is achieved/exceeded in either direction. A range us chart produces “trend candles” and “reversal candles”. A reversal candle always moves against the most immediate bar; a trend candle always moves in favor of the most immediate bar. The user defines the dollar amount price must travel up/down for a trend candle to fulfill, and for a reversal candle to fulfill.
Note: if a “down reversal” candle (red) Is produced, it’s impossible for the next candle to also be a down reversal candle - for the downside move to continue the criteria for a down trend candle must be fulfilled. Similarly, if an “up reversal” candle (green) Is produced, it’s impossible for the next candle to also be an up reversal candle - for the upside move to continue, the criteria for an uptrend trend candle must be fulfilled. Consequently, Range US bars frequently trade at the same level for extended periods. This is intentional, as this chart type is theorized to “filter noise” (whether Range US charts fulfill this theory is to your discretion).
Lastly, if an up trend candle (green) is produced, the next candle cannot be up a reversal up candle - only a trend up candle or reversal down candle can produce - vice versa for a trend down candle (the subsequent candle cannot be a reversal down candle). In this sense, an uptrend continues on successive trend up candles; a down trend continues on successive trend down candles.
The image above exemplifies Range US chart functionality.
The lower-right stats table shows the requisite price move for a "Trend" candle to produce and for a "Reversal" candle to produce.
The default settings for this chart time automatically calculate the required "Trend" candle price move and the required "Reversal" candle price move. However, both settings are configurable.
The image above shows manually configured parameters for a trend bar and reversal bar to produce. This feature allows the user to replicate the Range US chart hosted on extrinsic charting platforms.
However, please consider that this script does not use tick data; 1-minute OHLC data is used for calculations.
Consequently, configuring the trend bar and reversal bar requirement too low may return inaccurate data. For instance, if you set trend candles to form after a $1 price move then trend candles will form if price moves up $1 from a green Range US bar or down $1 from a red Range US bar. This is sufficient for lower priced assets; however, if you were trading, for instance, Bitcoin - a $1 price move can happen numerous times in one minute. This script can’t plot bars and record data until a 1-minute bar closes and a new 1-minute bar opens. Further, if Bitcoin moves up $1 twenty times and down $1 twenty times in a 1-minute bar - your Range US chart will record such variations as one price move. This data is inaccurate and likely useless.
To counter this quandary, a warning message will appear if you configure trend bar price moves or reversal bar price moves too low.
The image above shows the concealable warning message.
The image above is a flow diagram (made with shaky hands) illustrating the Range US bar formation process.
A google search will return additional information on the Range US chart type.
Volume Aggregation Bars
TradingView user and member of the TradingView Discord server @ferreirajames informed me of the Volume Aggregation chart type. The user commented in the "Suggestions" channel for the TradingView Discord server asking for the Volume Aggregation chart type. As an interim fix, I tried my hand at recreating the process, which is available in this script.
Similar to the Range US chart type, Volume Aggregation bars aren’t bound to a time-axis; the bars form after a user-defined, cumulative amount of volume is achieved or exceeded. Consequently, once the cumulative amount of volume is achieved or exceeded - a bar is produced at the corresponding price level.
Underlying theory: The chat type is conducive to identifying price levels where traders are “trapped”. Whether the process adequately distinguishes this circumstance is to your discretion.
The image above exemplifies the Volume Aggregation chart type.
Regardless of the current price, Volume Aggregation bars for after a requisite amount of volume is achieved/exceeded. Tick data isn't used; therefore, remainder values are carry over.
By default, the script automatically calculates a proportional cumulative volume total to dictate the formation of Volume Aggregation bars. However, the cumulative threshold is configurable.
The image above shows Volume Aggregation bars forming subsequent a user-defined cumulative volume total being exceeded.
Note: This chart type uses OHLC data from the timeframe of your chart. Therefore, for instance, setting the volume threshold too low will produce inaccurate, useless data.
A warning message will appear for such occurrence.
Gaps
The indicator incorporates a "Gaps" chart type.
The image above shows accompanying features.
A list of all unfilled gaps is accessible - gaps for this list are sorted by distance from current price.
Partially filled gaps are displayed in the corresponding gap box - the percentage amount the gap was filled is also displayed.
Gap statistics show:
# of Gaps
# of Up Gaps
# of Down Gaps
Average # of bars to fill Up Gaps
Average # of bars to dill Down Gaps
Average Gap Up % increase
Average Gap Down % decrease
Cumulative % increase of all Up Gaps
Cumulative % decrease of all Down Gaps
Naturally, there may be gaps formed thousands of bars ago that aren't close to price. Showing these gaps on the chart will "scrunch" the y-axis and make prices indistinguishable.
I've added a setting that allows the user to hide gaps that are "n" % away from the current price. The gap, if unfilled, will reappear when price trades within the user-defined percentage.
The image above shows an example. There's an unfilled down gap that's "hidden" because the current price is a further % away from price than what I've specified in the settings (1%). When prices trade back within 1% of the gap - it will reappear.
The image above shows the process in action. Prices moved back within 1% (can be any %) of the gap; therefore, it reappeared on the chart.
You can also set the % distance a gap must achieve for it to be considered a gap, recorded and plotted. Additionally, you can select to "visualize" gaps. Similar to the Range US chart and the Volume Aggregation chart, this setting will bars reflecting the most recent sequence of gaps - date and percentage distance of the gap are superimposed atop the bar.
Let me know if there's anything else you'd like included!
Note: The initial compilation time for this script is.... high. However, once the script's compiled, calculation load times are quick and you can sift through assets and timeframes relatively quick.
There's also a setting to "Improve Load Times" in the user-inputs table. This setting only improves the load times for post-compilation calculations and plots. The initial compilation load time is unchanged. Simply, once the indicator has "first loaded", all subsequent loads are quick.
Thank you! (:
TF Segmented Polynomial Regression [LuxAlgo]This indicator displays polynomial regression channels fitted using data within a user selected time interval.
The model is fitted using the same method described in our previous script:
Settings
Degree: Degree of the fitted polynomial
Width: Multiplicative factor of the model RMSE. Controls the width of the polynomial regression's channels
Timeframe: Fits the polynomial regression using data within the selected timeframe interval
Show fit for new bars: If selected, will fit the regression model for newly generated bars, else the previous fitted value is displayed.
Src: Input source
Usage
Segmented (or piecewise) models yield multiple fits by first partitioning the data into multiple intervals from specific partitioning conditions. In this script this partitioning condition is for a user selected timeframe to change.
Segmented models can be particularly pertinent for market prices, which often describes a series of local trends.
Segmented polynomial regressions can describe the nature of underlying trends in the price from their fit, such as if an underlying trend is more linear (trending) or constant (ranging), and if a trend is monotonic.
The above chart shows a monthly partitioning on SPX 15m, using a polynomial regression of degree 3. Channel extremities allows highlighting local tops/bottoms.
For real time applications users can choose to fit a current model to incoming price data using the Show fit for new bars settings.
Details
The script does not make use of line.new to display the segmented linear regressions, which allows showing a higher number of historical fits. Each channel extremity as well as the model fit is displayed from the plot function, as such user can more easily set alerts on them.
It is important to note that achieving this requires accessing future price data, as such this script is subject to lookahead bias, historical results differ from the results one could have obtained in real-time.